package com.next.common;

import lombok.Getter;
import lombok.Setter;

/**
 * Description:
 *
 * @author wcy
 * @version 1.0
 * @date 2024/2/22 21:03
 */
@Getter
@Setter
public class JsonData {

    private final static int SYSTEM_ERROR = 1;

    private boolean ret;

    private String msg;

    private Object data;

    private int code = 0;

    public JsonData(boolean ret) {
        this.ret = ret;
    }

    public static JsonData success() {
        return new JsonData(true);
    }

    public static JsonData success(Object data) {
        JsonData jsonData = new JsonData(true);
        jsonData.data = data;
        return jsonData;
    }

    public static JsonData success(Object data, String msg) {
        JsonData jsonData = new JsonData(true);
        jsonData.data = data;
        jsonData.msg = msg;
        return jsonData;
    }

    public static JsonData fail(String msg) {
        JsonData jsonData = new JsonData(false);
        jsonData.data = SYSTEM_ERROR;
        jsonData.msg = msg;
        return jsonData;
    }

    public static JsonData fail(String code, String msg) {
        JsonData jsonData = new JsonData(false);
        jsonData.data = code;
        jsonData.msg = msg;
        return jsonData;
    }
}
